package com.zjcloud.jwgl.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zjcloud.common.annotation.Excel;
import com.zjcloud.common.core.domain.BaseEntity;

/**
 * 班级信息对象 sc_class
 * 
 * @author zjcloud
 * @date 2024-12-19
 */
public class ScClass extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 班级ID */
    private Long id;

    /** 班级编码 */
    @Excel(name = "班级编码")
    private String classCode;

    /** 班级名称 */
    @Excel(name = "班级名称")
    private String className;

    /** 年级ID */
    @Excel(name = "年级ID")
    private Long gradeId;

    /** 年级名称 */
    @Excel(name = "年级名称")
    private String gradeName;

    /** 班级序号 */
    @Excel(name = "班级序号")
    private Integer classOrder;

    /** 班主任ID */
    @Excel(name = "班主任ID")
    private Long headTeacherId;

    /** 班主任姓名 */
    @Excel(name = "班主任姓名")
    private String headTeacherName;

    /** 学生人数 */
    @Excel(name = "学生人数")
    private Integer studentCount;

    /** 最大容量 */
    @Excel(name = "最大容量")
    private Integer maxCapacity;

    /** 班级类型(REGULAR普通班 EXPERIMENTAL实验班 HONOR重点班 SPECIAL特色班) */
    @Excel(name = "班级类型", readConverterExp = "REGULAR=普通班,EXPERIMENTAL=实验班,HONOR=重点班,SPECIAL=特色班")
    private String classType;

    /** 教学特色 */
    @Excel(name = "教学特色")
    private String teachingFeature;

    /** 状态(1启用 0禁用) */
    @Excel(name = "状态", readConverterExp = "1=启用,0=禁用")
    private String status;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setClassCode(String classCode) 
    {
        this.classCode = classCode;
    }

    public String getClassCode() 
    {
        return classCode;
    }
    public void setClassName(String className) 
    {
        this.className = className;
    }

    public String getClassName() 
    {
        return className;
    }
    public void setGradeId(Long gradeId) 
    {
        this.gradeId = gradeId;
    }

    public Long getGradeId() 
    {
        return gradeId;
    }
    public void setGradeName(String gradeName) 
    {
        this.gradeName = gradeName;
    }

    public String getGradeName() 
    {
        return gradeName;
    }
    public void setClassOrder(Integer classOrder) 
    {
        this.classOrder = classOrder;
    }

    public Integer getClassOrder() 
    {
        return classOrder;
    }
    public void setHeadTeacherId(Long headTeacherId) 
    {
        this.headTeacherId = headTeacherId;
    }

    public Long getHeadTeacherId() 
    {
        return headTeacherId;
    }
    public void setHeadTeacherName(String headTeacherName) 
    {
        this.headTeacherName = headTeacherName;
    }

    public String getHeadTeacherName() 
    {
        return headTeacherName;
    }
    public void setStudentCount(Integer studentCount) 
    {
        this.studentCount = studentCount;
    }

    public Integer getStudentCount() 
    {
        return studentCount;
    }
    public void setMaxCapacity(Integer maxCapacity) 
    {
        this.maxCapacity = maxCapacity;
    }

    public Integer getMaxCapacity() 
    {
        return maxCapacity;
    }
    public void setClassType(String classType) 
    {
        this.classType = classType;
    }

    public String getClassType() 
    {
        return classType;
    }
    public void setTeachingFeature(String teachingFeature) 
    {
        this.teachingFeature = teachingFeature;
    }

    public String getTeachingFeature() 
    {
        return teachingFeature;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("classCode", getClassCode())
            .append("className", getClassName())
            .append("gradeId", getGradeId())
            .append("gradeName", getGradeName())
            .append("classOrder", getClassOrder())
            .append("headTeacherId", getHeadTeacherId())
            .append("headTeacherName", getHeadTeacherName())
            .append("studentCount", getStudentCount())
            .append("maxCapacity", getMaxCapacity())
            .append("classType", getClassType())
            .append("teachingFeature", getTeachingFeature())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}